In recent years, digital mobile communications have been aggressively used. However, in ground mobile communications, due to the influence of much interference of delayed waves and high speed movement of mobile terminals, frequency selective fading takes place and thereby the received signal waveforms are remarkably distorted. Thus, the distorted signal waveforms should be compensated by equalizers.
The problems caused by the occurrence of the frequency selective fading have been discussed in many technical papers such as "J. G. Proakis, F Digital Communications. New York, McGraw-Hill, 1983, pp 610-627 (hereinafter named reference 1)", "B. Sklar, Digital Communications. Prentice Hall, 1988, pp 314-338 (hereinafter named reference 2)", and "J. Hagenauer et al., A Viterbi Algorithm with Soft-Decision Outputs and its Application. Proceedings of Globcom '89, pp 47.1.1-47.1.7, 1989 (hereinafter named reference 3)".
One of the most effective equalizing methods for obtaining correct transmission data from a reception signal waveform that is distorted due to a delay characteristic of a transmission path, such as frequency selective fading, and high speed fading is known as maximum likelihood sequence estimation.
First of all, with reference to FIG. 2, structures of a transmitter and a receiver used for a digital mobile communication and signal flows thereof, will be described in brief.
In a transmitter 1, an error correction code encoder 11 encodes transmission information data c.sub.m with an error correction code. Next, a transmission logic code encoder 12 converts transmission data b.sub.m, which has been encoded with the error correction code, into a transmission symbol a.sub.n. A transmission low pass filter 13 limits the band of the transmission symbol a.sub.n and generates a transmission complex base band signal s(t). Last, a modulator 14 modulates the transmission complex base band signal s(t) with a carrier and transmits the modulated signal as a signal s.sub.c (t).
The signal s.sub.c (t) is received as a signal r.sub.c (t) by a receiver 3 over a transmission path 2.
In the receiver 3, a demodulator 31 converts the signal r.sub.c (t) into a complex base band signal r(t). A reception low pass filter 32 limits the band of the complex base band signal r(t) and generates a reception complex base band signal y(t). The reception complex base band signal y(t) is sampled at symbol intervals T and thereby a sample value yn is obtained. An equalizer 33 compensates characteristics of the transmission path influenced by the frequency selective fading and estimates a transmission symbol from the sample value y.sub.n so as to obtain an estimated value Ea.sub.n. A transmission logic code decoder 34 converts the estimated value Ea.sub.n of transmission symbol into transmission data Eb.sub.m. Since the transmission data Eb.sub.m is a code that has been encoded with the error correction code, an error correction code decoder 35 decodes the transmission data Eb.sub.m so as to obtain information data Ec.sub.m.
The error correction code encoding is a systematic encoding method that alleviates an error that takes place on communication path. In the digital mobile communications, convolution codes are often used. As a decoding method for the convolution codes, the Viterbi algorithm is generally used.
The Viterbi algorithm is a decoding method that effectively executes a maximum likelihood decoding using a repeating structure of the convolution code. In the Viterbi algorithm, a bit sequence on a trellis chart and a reception bit sequence are compared. A path is selected so that data is decoded with least error (this path is referred to as the maximum likelihood path). In such a manner, a transmission signal is estimated.
Since the Viterbi algorithm, which is a convolution encoding method and a convolution decoding method, is described in the reference 2, a detailed description is omitted.
The Viterbi algorithm is largely categorized as hard decision and soft decision. The hard decision of the Viterbi algorithm treats an input signal as having one of two values, "1" and "0". On the other hand, the soft decision of the Viterbi algorithm treats an input signal as having one of three values, "1", "0", and a value which is intermediate thereof. Since the soft decision of the Viterbi algorithm is made based on many values, it provides better characteristics than the hard decision.
When a reception signal sequence y.sub.N ={y1, y2, . . . , y.sub.N) is obtained in a particular finite range, the maximum likelihood sequence estimator that is used as the equalizer 33 estimates a transmission symbol sequence a.sub.N ={a.sub.1, a.sub.2, . . . , a.sub.N } having the highest probability (likelihood) of which y.sub.N is accomplished with a known impulse response h(t) of the transmission path.
As the algorithm for the maximum likelihood estimation, the Viterbi algorithm is generally used. However, unlike with the demodulation of a convolution code, in the Viterbi algorithm, the number of states and the number of branches vary depending on each modulating method.
In the case of the convolution code, the number of states is 2.sup.K-1. In each state at a particular time, there are two branches that may take place in a state at a time prior to the particular time by one time unit. On the other hand, in the case of the maximum likelihood sequence estimation, assuming that there are M transmission symbols, the number of states is M.sup.K-1 and the number of branches is M (where K is referred to as a restriction length). In the case of the convolution code, K is the length of the encoder. In the case of the maximum likelihood sequence estimation, K is the length of an impulse response of a transmission path.
FIG. 1 is a block diagram showing a structure of a maximum likelihood sequence estimator used as a conventional equalizer 33. The maximum likelihood sequence estimator is composed of a Viterbi algorithm processing portion 331 and a transmission path estimator 332.
The transmission path estimator 332 outputs an impulse response of a transmission path 2 to the Viterbi algorithm processing portion 331. Since the impulse response of the transmission path 2 is actually not known, the transmission path estimator 332 estimates the impulse response with a reception signal y.sub.n, a known transmission signal that is a synchronous sequence thereof, and an estimated transmission symbol Ea.sub.n or a reception signal Y.sub.n and an estimated transmission symbol Ea.sub.n corresponding to such as an adaptive algorithm.
The Viterbi algorithm processing portion 331 estimates a transmission symbol with the reception signal y.sub.n and the impulse response {Eh.sub.k } (where k=0, 1, . . . , K) estimated by the transmission path estimator 332 corresponding to the Viterbi algorithm.
The transmission logic code decoder 34 converts the transmission symbol Ea.sub.n estimated by the maximum likelihood sequence estimator, which is the equalizer 33, into an estimated value Eb.sub.m of the transmission data and inputs the estimated value Eb.sub.m to the error correction code decoder 35. The transmission symbol Ea.sub.n estimated by the equalizer 33 is one of M that depends on a modulating method. Thus, the transmission data Eb.sub.m decoded by the transmission logic code decoder 34 is "1" or "0" (namely, a hard decision value). Since the transmission data Eb.sub.m is a hard decision value, the error correction code decoder 35 performs a decoding process corresponding to the hard decision of the Viterbi algorithm.
As described above, since the output data of the equalizer 33 is a hard decision value, processes downstream thereof are performed by the hard decision Viterbi algorithm. However, as described above, in the Viterbi algorithm of the convolution code, since the soft decision provides better characteristics than the hard decision, the output data of the equalizer 33 is preferably a soft decision value.
The reference 3 describes a Viterbi algorithm that outputs both a hard decision value and a soft decision value at the same time.
However, in the conventional soft decision type maximum likelihood sequence estimator proposed in the reference 3, it is assumed that one symbol accords with one bit.
In other words, in the maximum likelihood sequence estimator disclosed by the reference 3, when the Viterbi algorithm selects a particular path, it analyzes the correctness of whether or not the selection is correct as a function of .DELTA.=M(2)-M(1), where M(1) is a path metric of a path that is selected and M(2) is a path metric of a path that is not selected. As is clear from the analyzing method, the soft decision type maximum likelihood sequence estimator disclosed in the reference 3 can be used only when the number of branches is two. Thus, the soft decision type maximum likelihood sequence estimator cannot be used other than with a modulating method of which one bit is transmitted with one symbol.
In the case of a .pi./4 shift difference type phase modulation (DQPSK) or the like, since the hard decision output type maximum likelihood sequence estimator is used, an error correction code decoder downstream thereof should use the hard decision Viterbi algorithm. Thus, the characteristics of the Viterbi algorithm used in the error correction code decoder can be fully accomplished.